5 参数说明
5.1 parameter参数列表
5.2 detail参数详细描述
参数名称: task
默认值: 无
可选值: scf/relax/dos/band/optical/potential/elf/pcharge/neb/frequency/phonon/elastic/aimd/epsilon/wannier
描述: task 参数表示计算的类型,必须设置; scf/relax
可以是从头计算(不需要设置 cal.iniCharge
和 cal.iniWave
)也可以导入电荷密度或波函数(设置 cal.iniCharge
和 cal.iniWave
);
dos/band/optical/potential/elf
为后处理计算,必须要读取电荷密度,在导入电荷密度的同时可选择性的导入波函数(必须设置 cal.iniCharge ,选择性设置 cal.iniWave );
案例: task = scf
参数名称: sys.pseudoType
默认值: -1
可选值: -1/10/11
描述: sys.pseudoType
参数为设置 DS-PAW 计算所需的赝势格式;-1表示使用hzw赝势(.paw),目前DS-PAW支持 **H He Li Be B C N O F Ne Na Mg Al Si P S Cl Ar K Ca Sc Ti V Cr Mn Fe Co Ni Cu Zn Ga Ge As Se Br Kr Rb Sr Y Zr Nb Mo Tc Ru Rh Pd Ag Cd In Sn Sb Te I Xe Cs Ba La Hf Ta W Re Os Ir Pt Au Hg Tl Pb Bi Po At Rn* 72种元素的hzw赝势;
10表示外部potcar格式赝势(.potcar), 11表示外部pawpsp格式赝势(.pawpsp);
案例: sys.pseudoType = -1
参数名称: sys.pseudoPath
默认值: 当 sys.pseudoType
=-1时,无需设置该参数,程序只能从安装路径 /pseudopotential 读取赝势文件 ;sys.pseudoType
= 10,默认值 ./ ;sys.pseudoType
= 11,默认值 ./ ;
描述: sys.pseudoPath
参数为设置 DS-PAW 计算所需的赝势所在路径;一般无需自行设置,读取hzw赝势时会从默认存储路径读取,读取外部赝势时会默认从当前路径读取;
案例: sys.pseudoPath = ./
参数名称: sys.structure
默认值: atoms.as
可选值: .as /.h5 /.json
描述: sys.structure
参数设置结构文件的路径,支持 .as
、 .h5
和 .json
格式,支持绝对路径和相对路径;使用DS-PAW进行结构弛豫默认生成 relax.h5
文件,可直接设置 sys.structure = relax.h5
读取弛豫后的结构进行计算;(.json文件暂可支持但不建议用户使用,DS-PAW会在迭代版本过程中完全摒弃json格式的输出)
案例: sys.structure = relax.h5
参数名称: sys.symmetry
默认值: true
可选值: true/false
描述: sys.symmetry
该参数表示DS-PAW计算时是否进行对称性分析;
案例: sys.symmetry = false
参数名称: sys.symmetryAccuracy
默认值: 1.0e-5
可选值: real
描述: sys.symmetryAccuracy
该参数表示DS-PAW计算时对称性分析的精度;
案例: sys.symmetryAccuracy = 1.0e-6
参数名称: sys.functional
默认值: LDA
可选值: LDA/PBE/REVPBE/RPBE/PBESOL/vdw-optPBE/vdw-optB88/vdw-optB86b/vdw-DF/vdw-DF2/vdw-revDF2
描述: sys.functional
参数指定DS-PAW的泛函类型,如果 sys.functional=LDA 则会去读取指定路径下的LDA赝势;vdw开头的系列赝势对应泛函类的范德瓦尔斯校正方法;
案例: sys.functional = PBESOL
参数名称: sys.spin
默认值: none
可选值: none/collinear/non-collinear
描述: sys.spin
参数指定计算的自旋性质; none 表示没有自旋, collinear 表示共线自旋, non-collinear 表示一般自旋;
案例: sys.spin = collinear
参数名称: sys.spinDiff
默认值: 无
可选值: [0,inf)
描述: 设置上下自旋电子数的差;
案例: sys.spinDiff = 1
参数名称: sys.soi
默认值: false
可选值: true/false
描述: sys.soi
表示是否考虑自旋轨道耦合效应;自旋轨道耦合效应需要在sys.spin=non-collinear时才会生效;
案例: sys.soi = true
参数名称: sys.electron
默认值: 所有价电子的总和
可选值: real
描述: sys.electron
参数指定价电子的总数;DS-PAW通过引入背景电荷的方法计算带电体系;
案例: sys.electron = 12
参数名称: sys.hybrid
默认值: false
可选值: true/false
描述: sys.hybrid
参数指定是否使用杂化泛函;true表示引入杂化泛函,false表示不引入杂化泛函, sys.hybrid
只在 task = scf和relax 的时候生效,sys.hybrid
设置为true 时 sys.functional
不再生效;
案例: sys.hybrid = true
参数名称: sys.hybridType
默认值: HSE06
可选值: PBE0/HSE03/HSE06/B3LYP
描述: sys.hybridType
参数指定杂化泛函的类型;该参数只有在sys.hybrid = true时生效;
案例: sys.hybridType = HSE06
参数名称: sys.hybridAlpha
默认值: 当 sys.hybridType
= PBE0 时,默认值为 0.25 ,当 sys.hybridType
= HSE06 时,默认值为 0.25 ,当 sys.hybridType
= HSE03 时,默认值为 0.25
可选值: real
描述: sys.hybridAlpha
参数指定杂化泛函中精确的交换相关泛函的系数;该参数只有在sys.hybrid = true时生效;
案例: sys.hybridAlpha = 0.20
参数名称: sys.hybridOmega
默认值: 当 sys.hybridType
= PBE0 时,默认值为 0 ,当 sys.hybridType
= HSE06 时,默认值为 0.2 ,当 sys.hybridType
= HSE03 时,默认值为 0.3
可选值: real
描述: sys.hybridOmega
参数指定杂化泛函的屏蔽系数;该参数只有在sys.hybrid = true时生效;
案例: sys.hybridOmega = 0.2
参数名称: sys.sol
默认值: false
可选值: false/true
描述: sys.sol
参数指定是否应用隐式溶剂化模型;
案例: sys.sol = true
参数名称: sys.solEpsilon
默认值: 78.4
可选值: real
描述: sys.solEpsilon
参数指定溶剂介电常数,默认值为水的介电常数;
案例: sys.solEpsilon = 80
参数名称: sys.solTAU
默认值: 5.25E-4
可选值: real
描述: sys.solTAU
参数指定单位面积的有效界面张力的大小,单位eV/Å^2,该参数建议设置为小于1e-3的数值;
案例: sys.solTAU = 0
参数名称: sys.solLambdaD
默认值: 无
可选值: real
描述: sys.solLambdaD
参数指定泊松玻尔兹曼方程中德拜长度(Debye length)的数值,单位为Å,若不设置,使用泊松方程且忽略双电层离子对静电势的屏蔽效应;
案例: sys.solLambdaD = 3.04
备注
关于德拜长度
sys.solLambdaD
, 其表达式为 \(\lambda_D = \sqrt\frac{\varepsilon \varepsilon_ok_B T}{2 c^0 z^2 q^2}\)
1M 带+/-1电荷阴阳离子的水溶液的德拜长度为:3.04 Å
参数名称: sys.fixedP
默认值: false
可选值: false/true
描述: sys.fixedP
参数为控制固定电势计算的开关,目前只与 task = scf 兼容;
案例: sys.fixedP = true
参数名称: sys.fixedPConvergence
默认值: 0.01
可选值: real
描述: sys.fixedPConvergence
参数指定固定电势计算的收敛精度,当前后两次自洽计算的delta_electron小于收敛精度,计算结束;
案例: sys.fixedPConvergence = 0.01
参数名称: sys.fixedPPotential
默认值: 无
可选值: real
描述: sys.fixedPPotential
参数指定固定电势计算的目标电极电势值,默认以标准氢电极(SHE)为参考电极电势;
案例: sys.fixedPPotential = 5.4723
参数名称: sys.fixedPType
默认值: SHE
可选值: SHE/PZC
描述: sys.fixedPType
参数指定sys.fixedPPotential给出的电势值的电势类型,SHE为以标准氢电极的电极电势作为参考值,PZC以零电荷电位为参考值;
案例: sys.fixedPType = SHE
参数名称: sys.fixedPMaxIter
默认值: 60
可选值: int
描述: sys.fixedPMaxIter
参数指定固定电势计算时最大迭代步数;
案例: sys.fixedPMaxIter = 100
参数名称: cal.iniCharge
默认值: 无
可选值: 指定rho.bin文件路径
描述: cal.iniCharge
参数表示用户可以通过指定DS-PAW自洽或结构弛豫计算得到的电荷密度文件 rho.bin 的路径进行后续的计算; task=scf/relax 时,如果不需要读取上一次的电荷密度时则不设置 cal.iniCharge
,如果需要如果读取上一次的电荷密度时则设置cal.iniCharge;
当task= dos/band/potential/elf时必须设置 cal.iniCharge
指定 rho.bin 的路径;文件路径支持相对路径和绝对路径;
案例: cal.iniCharge = ../scf/rho.bin
参数名称: cal.iniWave
默认值: 无
可选值: 指定wave.bin文件路径
描述: cal.iniWave
参数表示用户可以通过指定DS-PAW自洽或结构弛豫计算得到的波函数文件 wave.bin 的路径进行后续的计算;不设置此参数则表示不读取 wave.bin ;文件路径支持相对路径和绝对路径;
案例: cal.iniWave = ../scf/wave.bin
参数名称: cal.cutoffFactor
默认值: 1.0
可选值: real
描述: cal.cutoffFactor
表示截断能参数cal.cutoff的系数,当 cal.cutoffFactor=1.5 时,DS-PAW计算时使用的截断能为cal.cutoff*1.5。DS-PAW2022A版本内部赝势皆已完成测试,cutoffFactor设置默认值1.0已能满足大多计算要求;
案例: cal.cutoffFactor = 1.0
参数名称: cal.cutoff
默认值: 当前计算所用的元素赝势中截断能的最大值;
可选值: real
描述: cal.cutoff
参数表示DS-PAW软件计算时候使用的平面波基矢的截断能,可在安装路径 /pseudopotential 查看各赝势文件内置截断能ecutoff的大小,如从O_PBE.paw文件可读出O_PBE的ecutoff为480 eV。
案例: cal.cutoff = 480
参数名称: cal.methods
默认值: 1 (sys.hybrid = true时,默认值为4)
可选值: 1/2/3/4/5
描述: cal.methods
表示自洽电子部分优化的方法,1表示 BD(block Davidson)
方法;2表示 RM(residual minimization)
方法;
3表示 RM(residual minimization)
方法和 BD(block Davidson)
方法的组合;4表示 damped MD
(阻尼分子动力学)方法;5表示 conjugated gradient
(共轭梯度方法);其中4和5可以在杂化泛函中使用;
案例: cal.methods = 1
参数名称: cal.smearing
默认值: 1
可选值: 1/2/3/4
描述: cal.smearing
表示用何种方法来设置每个波函数的部分占有数Gaussian smearing/Fermi-smearing/Methfessel-Paxton order 1/tetrahedron method with Blochl corrections;
案例: cal.smearing = 2
参数名称: cal.sigma
默认值: 0.2
可选值: real
描述: cal.sigma
表示使用有限温度方法设置部分占有数时的展宽;
案例: cal.sigma = 0.01
参数名称: cal.kpoints
默认值: [1,1,1]
可选值: 3*1 int array
描述: cal.kpoints
表示DS-PAW设置布里渊区k点网格取样大小;
案例: cal.kpoints = [9,9,9]
参数名称: cal.ksamping
默认值: MP
可选值: MP/G
描述: cal.ksamping
表示DS-PAW自动生成布里渊区k点网格的方法, Monhkorst-Pack
方法/ Gamma centered
方法;
案例: cal.ksamping = G
参数名称: cal.totalBands
默认值: 与体系价电子数目相关
可选值: int
描述: cal.totalBands
表示DS-PAW计算中所包含的总能带数目;
案例: cal.totalBands = 100
参数名称: cal.opticalGrid
默认值: 2000
可选值: int
描述: cal.opticalGrid
表示DS-PAW计算光学性质时在能量区内的网格点数,只在io.optical时生效;
案例: cal.opticalGrid = 2000
参数名称: cal.iniFixedP
默认值: 无
可选值: 指定恒电势计算输出的h5文件的路径
描述: cal.iniFixedP
给出上一次恒电势计算所得h5文件的路径,DS-PAW读取该文件进行恒电势续算;
案例: cal.iniFixedP = ./scf.h5
参数名称: cal.FFTGrid
默认值: 取决于参数 cal.cutoff 和 cal.cutoffFactor
可选值: 3*1 int array
描述: cal.FFTGrid
给出晶胞在沿着三个晶格方向上的FFT-Grid格点数 ;
案例: cal.FFTGrid = [16,16,16]
参数名称: cal.supGrid
默认值: false
可选值: true/false
描述: cal.supGrid
为是否使用 support FFTGrid的开关,可加大FFT-Grid的密度;
案例: cal.supGrid = true
参数名称: io.charge
默认值: true
可选值: true/false
描述: 控制是否输出电荷密度文件 rho.bin
和 rho.h5
;当io.charge=true时,生成 rho.bin
和 rho.h5
文件 ;
案例: io.charge = true
参数名称: io.elf
默认值: false
可选值: false/true
描述: 输出ELF的数据结果;当task=scf/relax时该参数生效 ;
案例: io.elf = true
参数名称: io.potential
默认值: false
可选值: false/true
描述: 输出势函数的数据结果;当task=scf/relax时该参数生效;当io.potential=true时,可以选择 potential.type
来设置输出势函数的类型;
案例: io.potential = true
参数名称: io.wave
默认值: task = wannier 且不读取wave.bin文件时默认值为 true, 其他task下默认值为 false
可选值: false/true
描述: 输出波函数的二进制文件 wave.bin
;当io.wave=true时,生成 wave.bin
文件;
案例: io.wave = true
参数名称: io.band
默认值: false
可选值: false/true
描述: 在task=scf时是否直接计算能带的开关;当io.band=true时,所有能带计算参数都生效;
案例: io.band = true
参数名称: io.dos
默认值: false
可选值: false/true
描述: 在task=scf时是否直接计算态密度的开关;当io.dos=true时,所有态密度计算参数都生效;
案例: io.dos = true
参数名称: io.optical
默认值: false
可选值: false/true
描述: 控制是否进行光学性质计算;io.optical=true仅在task=scf时生效,当该参数生效时对应的scf.h5文件会写入光学性质数据;
案例: io.optical = true
参数名称: io.bader
默认值: false
可选值: false/true
描述: 控制是否进行bader电荷计算;io.bader=true仅在task=scf时生效,当该参数生效时对应的scf.h5文件会写入bader电荷数据;
案例: io.bader = true
参数名称: io.polarization
默认值: false
可选值: false/true
描述: 控制是否进行铁电极化计算;io.polarization=true仅在task=scf时生效,当该参数生效时对应的scf.h5文件会写入铁电极化数据;
案例: io.polarization = true
参数名称: io.magProject
默认值: sys.spin=collinear以及sys.spin=non-collinear时默认值为true,其余情况为false
可选值: false/true
描述: 在磁矩计算中,控制是否在相应的h5输出文件中写入投影磁矩数据;
案例: io.magProject = true
参数名称: io.boundCharge
默认值: false
可选值: true/false
描述: 控制引入隐式溶剂模型时是否输出溶剂束缚电荷密度文件;
案例: io.boundCharge = true
参数名称: io.outJsonFile
默认值: true
可选值: true/false
描述: 控制是否输出json格式的输出文件;
案例: io.outJsonFile = false
参数名称: scf.max
默认值: 60
可选值: int
描述: scf.max
表示DS-PAW自洽计算时电子步的最大步数;
案例: scf.max = 100
参数名称: scf.min
默认值: 2
可选值: int
描述: scf.min
表示DS-PAW自洽计算时电子步的最少步数;
案例: scf.min = 5
参数名称: scf.mixBeta
默认值: 0.4
可选值: real
描述: scf.mixBeta
表示DS-PAW自洽计算时电子混合算法的Beta值;
案例: scf.mixBeta = 0.2
参数名称: scf.mixType
默认值: Pulay
可选值: Broyden/Kerker/Pulay
描述: scf.mixType
表示DS-PAW自洽计算时电子混合算法的类型,目前支持 Broyden方法 、 Kerker方法 和 Pulay方法 ;
案例: scf.mixType = Pulay
参数名称: scf.convergence
默认值: 1.0e-4
可选值: real
描述: scf.convergence
表示DS-PAW自洽计算时,能量的收敛判据;
案例: scf.convergence = 1.0e-5
参数名称: scf.timeStep
默认值: 0.4
可选值: real
描述: scf.timeStep
参数控制cal.methods=4/5时的步长;
当cal.methods =4 时,scf.timeStep决定了MD的步长;步长太小会让计算收敛花费较多步数,步长太大会让scf计算发散;
当cal.methods =5 时,scf.timeStep决定了初始步长的大小,步长太大可能会让scf计算不稳定,步长太小可能会让计算不够准确;
案例: scf.timeStep = 0.4
参数名称: relax.max
默认值: 60
可选值: int
描述: relax.max
表示DS-PAW结构驰豫时,最大的离子步步数;
案例: relax.max = 300
参数名称: relax.freedom
默认值: atom
可选值: atom/volume/all/atom&shape
描述: relax.freedom
表示DS-PAW结构驰豫的自由度,atom表示只弛豫原子位置; volume表示只弛豫晶格体积;all表示弛豫原子位置、晶格体积和晶胞形状;atom&shape表示弛豫原子位置和晶格形状;
案例: relax.freedom = atom
参数名称: relax.methods
默认值: CG
可选值: CG/DMD/QN
描述: relax.methods
表示DS-PAW结构驰豫的方法,CG表示共轭梯度法; DMD表示阻尼分子动力学法; QN表示准牛顿方法;
案例: relax.methods = CG
参数名称: relax.convergenceType
默认值: force
可选值: force/energy
描述: relax.convergenceType
表示弛豫计算中收敛标准的选择,可以选择受力或以能量为收敛标准;
案例: relax.convergenceType = energy
参数名称: relax.convergence
默认值: 0.05/1e-4
可选值: real
描述: relax.convergence
表示DS-PAW结构驰豫时,原子受力或能量的收敛判据;选择力为收敛标准时默认值为0.05,选择能量为收敛标准时默认值为1e-4;
案例: relax.convergence = 0.01
参数名称: relax.stepRange
默认值: 0.5
可选值: real
描述: relax.stepRange
表示结构驰豫时,结构驰豫的中的缩放常数;
案例: relax.stepRange = 0.2
参数名称: relax.pressure
默认值: 0
可选值: real
描述: relax.pressure
表示将在特定外压下进行结构优化,也可用于修正Pullay stress error,单位 kbar ;
案例: relax.pressure = 100
参数名称: dos.range
默认值: [-10,10]
可选值: 2*1 array
描述: dos.range
表示当task=dos时,态密度计算能量的区间;
案例: dos.range = [-15,15]
参数名称: dos.resolution
默认值: 0.05
可选值: real
描述: dos.resolution
表示当task=dos时,态密度计算能量间隔精度;
案例: dos.resolution = 0.1
参数名称: dos.project
默认值: false
可选值: false/true
描述: dos.project
参数控制着投影态密度;当task=dos时,dos.project为 false/true ;若打开投影,dos.project= ture , 此时 dos.h5
文件中将会保存投影态密度的信息;若不打开投影,dos.project = false ;
案例: dos.project = true
参数名称: band.kpointsLabel
默认值: 无
可选值: n*1 string array
描述: 该参数只有在task=band时才能生效; band.kpointsLabel
为能带计算时高对称点标签, band.kpointsLabel数组的大小是band.kpointsCoord 数组大小的 1/3 ;比band.kpointsNumber数组大小大 1 ;
案例: band.kpointsLabel = [G,M,K,G]
参数名称: band.kpointsCoord
默认值: 无
可选值: 3n*1 real array
描述: 该参数只有在task=band时才能生效; band.kpointsCoord 为能带计算时高对称点的分数坐标, band.kpointsCoord 数据大小是band.kpointsLabel数据大小的 3倍 ;
案例: band.kpointsCoord = [0, 0, 0, 0.5, 0.5, 0.5, 0, 0, 0.5, 0, 0, 0]
参数名称: band.kpointsNumber
默认值: 无
可选值: (n-1)*1 int array/ 1*1 int array
描述: 该参数只有在能带计算时生效; band.kpointsNumber 为每相邻两个高对称点之间的K点个数
当参数长度为(n-1)*1 int array 时 band.kpointsNumber 比 band.kpointsLabel 数据大小少 1
当参数长度为 1*1 int array 时,以给定参数为基准,对所有高对称点进行等密度撒点,等密的最终撒点数可从DS-PAW.log的 band.kpointsNumber 读取;
案例: band.kpointsNumber = [100]
参数名称: band.project
默认值: false
可选值: false/true
描述: band.project
参数控制着投影能带;当task= band 时, 若设置 band.project= ture , 则 band.h5
文件中会保存投影能带的信息;若不打开投影,设置band.project = false ;
案例: band.project = true
参数名称: band.unfolding
默认值: false
可选值: false/true
描述: band.unfolding
参数是能带去折叠的开关;当task= band 时, band.unfolding生效(io.band = true不生效),若设置band.unfolding= ture , band.h5
文件中会保存反折叠能带数据 ;
案例: task = band, band.unfolding = true
参数名称: band.primitiveUVW
默认值: 无
可选值: 9*1 real array
描述: band.primitiveUVW
能带去折叠计算时,超胞的晶格常数乘上UVW系数等于原胞的晶格矢量;
案例: band.primitiveUVW = [0.0, 0.5, 0.5, 0.5, 0.0, 0.5, 0.5, 0.5, 0.0]
参数名称: band.EfShift
默认值: task=band时为true,其他task时为false
可选值: true/false
描述: band.EfShift
参数表示task=band时,是否从rho.bin中读取EFermi,仅在task=band时生效;
案例: band.EfShift = true
参数名称: optical.Grid
默认值: 2000
可选值: int
描述: optical.Grid
表示DS-PAW计算光学性质时在能量区内的网格点数,只在io.optical和task=optical时生效;
案例: optical.Grid = 2000
参数名称: optical.KKEta
默认值: EnergyAxe resolution*0.99
可选值: real
描述: optical.KKEta
利用Kramers-Kroning关系求解介电函数实部时的 \(\eta\) 值。使用默认值时,结果可能很不平滑。
增大 \(\eta\) 可以让结果更加平滑,但会让低频区域介电函数值计算结果出现一定程度错误。不建议使用过大的 \(\eta\) ,建议通过增加格点数(optical.Grid)让结果更平滑。
(未增加此参数的旧版本中, \(\eta\) 值为0.1)
案例: optical.KKEta = 0.1
参数名称: optical.smearing
默认值: 1
可选值: 1/2/3
描述: optical.smearing
决定在optical计算时对能量展宽时的展宽算法。1/2/3分别对应Gaussian smearing/Fermi smearing/Methfessel-Paxton order 1;
案例: optical.smearing = 1
参数名称: optical.sigma
默认值: 0.05
可选值: real
描述: optical.sigma
决定使用optical.smearing决定的展开算法时的展宽宽度;
案例: optical.sigma = 0.05
参数名称: optical.Emax
默认值: 未占据态的最大能量*1.2 (eV)
可选值: real
描述: optical.Emax
决定optical计算时频率(EnergyAxe)的最大值;
案例: optical.Emax = 20
参数名称: potential.type
默认值: total
可选值: total/hartree/all
描述: potential.type
控制静电势的输出类型;当potential.type = hartree, potental.h5
文件写入静电势(离子势和hartree势之和),当potential.type = total, potental.h5
文件写入局域势(静电势和交换关联势之和)数据,当potential.type = all, potental.h5
文件同时写入两种势;
案例: potential.type = all
参数名称: corr.chargedSystem
默认值: false
可选值: false/true
描述: corr.chargedSystem
表示当计算带电体系时,可以设置该参数修正带电块体体系的能量;
案例: corr.chargedSystem = true
参数名称: corr.dipol
默认值: false
可选值: false/true
描述: corr.dipol
表示引入人为的势场(偶极修正)来修正真空电势不平整的问题;
案例: corr.dipol = true
参数名称: corr.dipolDirection
默认值: 无
可选值: a/b/c/all
描述: corr.dipolDirection
表示偶极修正的方向,a/b/c分别表示三个晶格常数的方向,all表示所有方向,适用于孤立分子计算;
案例: corr.dipolDirection = c
参数名称: corr.dipolPosition
默认值: 无
可选值: 3*1 real array
描述: corr.dipolPosition
表示偶极子在晶胞的相对位置;
案例: corr.dipolPosition = [0.5, 0.5, 0.5]
参数名称: corr.dipolEfield
默认值: 0
可选值: real
描述: corr.dipolEfield
表示外加电场的大小,单位为eV/Å,该参数只在 corr.dipol = true
和设置 corr.dipolDirection
的情况下生效;
案例: corr.dipolEfield = 0.05
参数名称: corr.dftu
默认值: false
可选值: false/true
描述: corr.dftu
表示是否引入hubbard U来处理强关联体系;
案例: corr.dftu = true
参数名称: corr.dftuForm
默认值: 2
可选值: 1/2
描述: corr.dftuForm
表示选择哪一种DFT+U方法。1 对应 DFT+U+J 方法 (Liechtenstein’s formulation),2 对应 DFT+U 方法 (Dudarev’s formulation) ;
案例: corr.dftuForm = 2
参数名称: corr.dftuElements
默认值: 无
可选值: n*1 string array
描述: corr.dftuElements
表示设置需要加U的元素;
案例: corr.dftuElements = [Ni,O]
参数名称: corr.dftuOrbital
默认值: 无
可选值: n*1 string array
描述: corr.dftuOrbital
表示设置选中元素上需要加U的轨道;
案例: corr.dftuOrbital = [d,s]
参数名称: corr.dftuU
默认值: 无
可选值: n*1 real array
描述: corr.dftuU
表示设置选中元素选中轨道上需要加U值的大小;
案例: corr.dftuU = [8,1]
参数名称: corr.dftuJ
默认值: 无
可选值: n*1 real array
描述: corr.dftuJ
表示设置选中元素选中轨道上需要加J值的大小;
案例: corr.dftuJ = [0.95,0]
参数名称: corr.VDW
默认值: false
可选值: false/true
描述: corr.VDW
表示是否引入范德瓦尔斯修正;
案例: corr.VDW = true
参数名称: corr.VDWType
默认值: D2G
可选值: D2G/D3G/D3BJ
描述: corr.VDWType
表示使用哪种范德瓦尔斯修正,D2G表示DFT-D2 of Grimme方法; D3G表示DFT-D3 of Grimme方法; D3BJ表示DFT-D3 with Becke-Jonson damping方法;
案例: corr.VDWType = D3G
参数名称: corr.coreEnergy
默认值: false
可选值: true/false
描述: corr.coreEnergy
表示设置是否用初态近似计算芯电子能级;
案例: corr.coreEnergy = true
参数名称: pcharge.bandIndex
默认值: 无
可选值: n*1 int array
描述: pcharge.bandIndex
表示部分电荷密度计算时能带的序号;
案例: pcharge.bandIndex = [1,3,4]
参数名称: pcharge.kpointsIndex
默认值: 无
可选值: n*1 int array
描述: pcharge.kpointsIndex
表示部分电荷密度计算时K点的序号;
案例: pcharge.kpointsIndex = [12,14]
参数名称: pcharge.sumK
默认值: false
可选值: false/true
描述: pcharge.sumK
表示计算部分电荷密度之后保存数据是否将所有K点,不同能带的数据相加;
案例: pcharge.sumK = true
参数名称: neb.springK
默认值: 5
可选值: real
描述: neb.springK
表示过渡态计算中弹簧系数K;
案例: neb.springK = 7
参数名称: neb.images
默认值: 无
可选值: int
描述: neb.images
表示过渡态计算中的中间结构的数目;
案例: neb.images = 5
参数名称: neb.iniFin
默认值: false
可选值: true/false
描述: neb.iniFin
表示过渡态计算中初态结构和末态结构是否进行自洽计算,true表示进行自洽计算;
案例: neb.iniFin = true
参数名称: neb.method
默认值: QN
可选值: LBFGS/CG/QM/QN/QM2/FIRE
描述: neb.method
表示过渡态计算中使用的算法;
案例: neb.method = QN
参数名称: neb.freedom
默认值: atom
可选值: atom/all
描述: neb.freedom
表示过渡态计算中弛豫的自由度,可以选择只弛豫原子,也可放开晶胞进行弛豫;
案例: neb.freedom = all
参数名称: neb.convergenceType
默认值: force
可选值: force/energy
描述: neb.convergenceType
表示过渡态计算中收敛标准的选择,选用LBFGS/CG/QM2/FIRE方法时只能以力作为收敛判据;
案例: neb.convergenceType = energy
参数名称: neb.convergence
默认值: 0.1/1e-4
可选值: real
描述: neb.convergence
表示过渡态计算中受力或能量的收敛标准;选择力为收敛标准时默认值为0.1,选择能量为收敛标准时默认值为1e-4;
案例: neb.convergence = 0.01
参数名称: neb.stepRange
默认值: 0.1
可选值: real
描述: neb.stepRange
表示过渡态计算中结构弛豫的步长;
案例: neb.stepRange = 0.01
参数名称: neb.max
默认值: 60
可选值: int
描述: neb.max
表示过渡态计算中结构弛豫的最大步数;
案例: neb.max = 300
参数名称: frequency.dispOrder
默认值: 1
可选值: 1/2
描述: frequency.dispOrder
表示频率计算时原子振动的方式,1对应中心差分法,有两种振动方式,2对应四种振动方式;
案例: frequency.dispOrder = 2
参数名称: frequency.dispRange
默认值: 0.01
可选值: real
描述: frequency.dispRange
表示频率计算时的原子位移;
案例: frequency.dispRange = 0.05
参数名称: phonon.structureSize
默认值: [1,1,1]
可选值: 3*1 int array
描述: phonon.structureSize
表示声子计算时超胞的大小;
案例: phonon.structureSize = [2,2,2]
参数名称: phonon.method
默认值: fd
可选值: fd/dfpt
描述: phonon.method
表示声子计算的方式;fd为有限位移法;dfpt为密度泛函微扰理论方法;
案例: phonon.method = dfpt
参数名称: phonon.type
默认值: phonon
可选值: phonon/band/dos/bandDos
描述: phonon.type
表示声子计算哪些性质:phonon对应计算力常数矩阵或force set;band对应计算声子能带;dos对应计算声子态密度;bandDos对应计算声子能带及声子态密度;
案例: phonon.type = bandDos
参数名称: phonon.isDisplacement
默认值: true
可选值: true/false
描述: phonon.isDisplacement
表示fd方法计算声子计算时是否进行位移;
案例: phonon.isDisplacement = true
参数名称: phonon.fdDisplacement
默认值: 0.01
可选值: real
描述: phonon.fdDisplacement
表示fd方法计算声子计算时进行位移的大小;
案例: phonon.fdDisplacement = 0.05
参数名称: phonon.iniPhonon
默认值: 无
可选值: 指定phonon.h5的路径
描述: phonon.iniPhonon
表示声子能带或态密度计算时读取力常数矩阵或force set时的路径;
案例: phonon.iniPhonon = ../phonon/phonon.h5
参数名称: phonon.qsamping
默认值: MP
可选值: MP/G
描述: phonon.qsamping
表示计算声子时布里渊区q点采样方法,Monkhorst-Pack
方法/ Gamma centered
方法;
案例: phonon.qsamping = G
参数名称: phonon.qpoints
默认值: [1,1,1]
可选值: 3*1 int array
描述: phonon.qpoints
表示声子计算时Q空间网格取样大小;
案例: phonon.qpoints = [9,9,9]
参数名称: phonon.qpointsLabel
默认值: 无
可选值: n*1 string array
描述: phonon.qpointsLabel
表示声子能带计算时高对称点标签;
案例: phonon.qpointsLabel = [G,M,K,G]
参数名称: phonon.qpointsCoord
默认值: 无
可选值: 3n*1 real array
描述: phonon.qpointsCoord
表示声子能带计算时高对称点坐标;
案例: phonon.qpointsCoord = [0, 0, 0, 0.5, 0.5, 0.5, 0, 0, 0.5, 0, 0, 0]
参数名称: phonon.qpointsNumber
默认值: 51
可选值: int
描述: phonon.qpointsNumber
表示声子能带相邻两个高对称点的间隔;
案例: phonon.qpointsNumber = 100
参数名称: phonon.primitiveUVW
默认值: [1,0,0,0,1,0,0,0,1]
可选值: 9*1 real array
描述: phonon.primitiveUVW
声子能带计算时,超胞的晶格常数乘上UVW系数等于原胞的晶格矢量;
案例: phonon.primitiveUVW = [1,0,0,0,1,0,0,0,1]
参数名称: phonon.dosRange
默认值: [0, 40]
可选值: 2*1 real array
描述: phonon.dosRange
表示声子态密度计算能量的区间;
案例: phonon.dosRange = [-15,15]
参数名称: phonon.dosResolution
默认值: 0.1
可选值: real
描述: phonon.dosResolution
表示声子态密度计算能量间隔精度;
案例: phonon.dosResolution = 0.01
参数名称: phonon.dosSigma
默认值: 0.1
可选值: real
描述: phonon.dosSigma
表示声子态密度计算时的展宽;
案例: phonon.dosSigma = 0.1
参数名称: phonon.dfptEpsilon
默认值: false
可选值: false/true
描述: phonon.dfptEpsilon
是phonon.method = dfpt时控制介电常数计算的开关;
案例: phonon.dfptEpsilon = true
参数名称: phonon.nac
默认值: phonon.dfptEpsilon = true 时默认为true
可选值: false/true
描述: 当phonon.dfptEpsilon = true时,若计算能带和态密度,phonon.nac作为是否使用non-analytical term correction的开关;
案例: phonon.nac = false
参数名称: phonon.thermal
默认值: false
可选值: false/true
描述: phonon.thermal
是 task=phonon且phonon.type=dos或phonon.type=bandDos时控制热力学性质计算的开关;
案例: phonon.thermal = true
参数名称: phonon.thermalRange
默认值: [0,1200,10]
可选值: 3*1 real array
描述: phonon.thermalRange
[min_T, max_T, ΔT]表示热力学性质计算时温度的选取范围以及数据存储间隔;
案例: phonon.thermalRange = [0,1000,10]
参数名称: phonon.eigenVectors
默认值: false
可选值: false/true
描述: phonon.eigenVectors
控制是否输出dynamical matrix的本征矢量。phonon.eigenVectors=true,将在phonon输出文件的BandInfo下增加EigenVectors的输出;其中EigenVectors>Size给出dynamical matirx本征矢量矩阵的大小(大小为:[NumberOfQPoints,(NumberOfAtoms*3),NumberOfBand,(real,imag)]),EigenVectors>RowMajor表示是否以行优先模式输出,EigenVectors>Values给出本征矢量矩阵的值;
案例: phonon.eigenVectors = true
参数名称: elastic.dispOrder
默认值: 1
可选值: 1/2
描述: elastic.dispOrder
表示弹性常数计算时原子振动的方式,1对应中心差分法,有两种振动方式,2对应四种振动方式;
案例: elastic.dispOrder = 1
参数名称: elastic.dispRange
默认值: 0.01
可选值: real
描述: elastic.dispRange
表示弹性常数计算时的原子位移;
案例: elastic.dispRange = 0.05
参数名称: aimd.ensemble
默认值: NVE
可选值: NVE/NVT/NPT/NPH/SA
描述: aimd.ensemble
表示分子动力学模拟时选用的系综;SA为Simulated Annealing缩写,对应模拟退火过程;
案例: aimd.ensemble = NVE
参数名称: aimd.thermostat
默认值: 取决于 aimd.ensemble
可选值: andersen/noseHoover/langevin
描述: aimd.thermostat
表示分子动力学模拟时选用的恒温器或恒压器;
案例: aimd.thermostat = andersen
Thermostat/Ensemble
NVE
NVT
NPT
NPH
SA
andersen
compatible*
compatible
incompatible
incompatible
incompatible
noseHoover
incompatible
compatible*
incompatible
incompatible
incompatible
langevin
incompatible
compatible
compatible*
compatible*
incompatible
Note: * denotes default thermostat
参数名称: aimd.andersenProb
默认值: aimd.ensemble = NVE 时默认值为0
可选值: NVE 时可选值为0,NVT 时可选值为 real (0 < x ≤ 1)
描述: aimd.andersenProb
控制Andersen恒温器下原子受到“碰撞”的概率;
案例: aimd.andersenProb = 0
参数名称: aimd.noseMass
默认值: 0
可选值: real (x ≥ 0)
描述: aimd.noseMass
控制Nose-Hoover恒温器的有效质量;
案例: aimd.noseMass = 0
参数名称: aimd.latticeFCoeff
默认值: aimd.ensemble = NPH 时默认值为0
可选值: NPH 时可选值为0,NPT 时可选值为 real (x > 0)
描述: aimd.latticeFCoeff
表示NPT/NPH系综下langevin恒温器中的晶胞摩擦系数大小,单位 ps-1;
案例: aimd.latticeFCoeff = 10
参数名称: aimd.atomFCoeffElements
默认值: 无
可选值: n*1 string array
描述: aimd.atomFCoeffElements
表示选用langevin恒温器时考虑为langevin原子的元素名称,命名规则为 “原元素名 +下划线 + 自定义字段” ,如命名为 Hf_1,structure.as文件需同步修改元素名;
案例: aimd.atomFCoeffElements = [Hf_1,O_1]
参数名称: aimd.atomFCoeffs
默认值: 无
可选值: n*1 string array
描述: aimd.atomFCoeffs
表示选用langevin恒温器时考虑为langevin原子对应的摩擦系数,单位 ps-1。该数值应与aimd.atomFCoeffElements给出的元素名对应,如下案例表示为Hf_1原子赋值10,为O_1原子赋值5;
案例: aimd.atomFCoeffElements = [Hf_1,O_1], aimd.atomFCoeffs = [10,5]
参数名称: aimd.latticeMass
默认值: 1000
可选值: real
描述: aimd.latticeMass
表示选用langevin恒压器进行NPT/NPH模拟时晶胞自由度的虚拟质量,单位 amu ;
案例: aimd.latticeMass = 1000
参数名称: aimd.pressure
默认值: 0
可选值: real
描述: aimd.pressure
表示进行NPT/NPH模拟时体系的目标压强值,单位 kbar;
案例: aimd.pressure = 1000
参数名称: aimd.iniTemp
默认值: 0
可选值: real
描述: aimd.iniTemp
表示分子动力学模拟时的初始温度,单位 K ;
案例: aimd.iniTemp = 1000
参数名称: aimd.finTemp
默认值: aimd.iniTemp
可选值: real
描述: aimd.finTemp
表示分子动力学模拟时的末态温度,该参数只在 aimd.ensemble = SA 时生效,单位 K ;
案例: aimd.finTemp = 1000
参数名称: aimd.timeStep
默认值: 1
可选值: real
描述: aimd.timeStep
表示分子动力学模拟时的时间步长,单位 fs ;
案例: aimd.timeStep = 1
参数名称: aimd.totalSteps
默认值: 无
可选值: real
描述: aimd.totalSteps
表示分子动力学模拟的总步数;
案例: aimd.totalSteps = 10000
参数名称: wannier.functions
默认值: 无
可选值: int
描述: wannier.functions
表示wannier函数的个数;
案例: wannier.functions = 8
参数名称: wannier.wannMaxIter
默认值: 200
可选值: int
描述: wannier.wannMaxIter
表示在求解最大局域化wannier函数过程中的总迭代次数;
案例: wannier.wannMaxIter = 500
参数名称: wannier.disMaxIter
默认值: 100
可选值: int
描述: wannier.disMaxIter
表示解纠缠的最大迭代步数;
案例: wannier.disMaxIter = 200
参数名称: wannier.disWin
默认值: [自洽计算所得哈密顿量最低本征值, 最高本征值]
可选值: 2*1 array
描述: wannier.disWin
表示解纠缠的能量窗口,默认包含所有能带;
案例: wannier.disWin = [-1000,1000]
参数名称: wannier.disFrozWin
默认值: 无
可选值: 2*1 array
描述: wannier.disFrozWin
表示解纠缠窗口,解纠缠时,该窗口中的态将保持不变;
案例: wannier.disFrozWin = [-10,10]
参数名称: wannier.disEfShift
默认值: false
可选值: true/false
描述: wannier.disEfShift
表示wannier.disWin和wannier.disFrozWin输入的能量是否是Ef=0;
案例: wannier.disEfShift = true
参数名称: wannier.interpolatedBand
默认值: false
可选值: true/false
描述: wannier.interpolatedBand
表示 wannier 计算插值能带的开关;
案例: wannier.interpolatedBand = true
参数名称: wannier.kpointsLabel
默认值: 无
可选值: n*1 string array
描述: wannier.kpointsLabel
表示插值能带的高对称点标签;
案例: wannier.kpointsLabel = [G,M,K,G]
参数名称: wannier.kpointsCoord
默认值: 无
可选值: 3n*1 real array
描述: wannier.kpointsCoord
表示插值能带高对称点的分数坐标;
案例: wannier.kpointsCoord = [0, 0, 0, 0.5, 0.5, 0.5, 0, 0, 0.5, 0, 0, 0]
参数名称: wannier.kpointsNumber
默认值: 无
可选值: (n-1)*1 int array/ 1*1 int array
描述: 该参数只有在插值能带计算时生效; wannier.kpointsNumber 为能带每相邻两个高对称点间的K点个数
当参数长度为(n-1)*1 int array 时 wannier.kpointsNumber 比 wannier.kpointsNumber 数据大小少 1
当参数长度为 1*1 int array 时,以给定参数为基准,对所有高对称点进行等密度撒点,等密的最终撒点数可从DS-PAW.log的 wannier.kpointsNumber 读取;
案例: wannier.kpointsNumber = [100]
参数名称: wannier.kmeshTolerance
默认值: 1e-06
可选值: real
描述: wannier.kmeshTolerance
决定两个k点是否在同一壳层;
案例: wannier.kmeshTolerance = 1e-06
参数名称: wannier.outStep
默认值: 20
可选值: int
描述: wannier.outStep
表示task=wannier时输出wannier的信息的步数间隔;
案例: wannier.outStep = 50
标签名称: WannProj
默认值: 无
可选值: n*1 string array
描述: WannProj
为wannier计算中定义初始投影轨道的标签,用于 structure.as 中;
案例:
1 Total number of atoms
2 2
3 Lattice
4 0.00 2.75 2.75
5 2.75 0.00 2.75
6 2.75 2.75 0.00
7 Direct WannProj
8 Si -0.125000000 -0.125000000 -0.125000000 [s,p]
9 Si 0.125000000 0.125000000 0.125000000 [s,p]
备注
WannProj 标签设置在 structure.as 文件的第 7 行
此例投影轨道总数为 2*(1+3)= 8 条
可选值范围: DS-PAW 共支持 44 种投影轨道名称,分二类,展示如下:
- 第一类:轨道简称,对应该类型轨道的总数目,两种关系见下表:
name
number of projections
[s]
1
[p]
3
[d]
5
[f]
7
[sp]
2
[sp2]
3
[sp3]
4
[sp3d]
5
[sp3d2]
6
- 第二类:特定轨道的名称,每种(每个数组,[ ])对应 1 条投影轨道:
[px] [py] [pz] |
[dxy] [dyz] [dxz] [dz2] [dx2-y2] |
[fz3] [fxz2] [fyz2] [fxyz] [fz(x2-y2)] [fx(x2-3y2)] [fy(3x2-y2)] |
[sp-1] [sp-2] |
[sp2-1] [sp2-2] [sp2-3] |
[sp3-1] [sp3-2] [sp3-3] [sp3-4] |
[sp3d-1] [sp3d-2] [sp3d-3] [sp3d-4] [sp3d-5] |
[sp3d2-1] [sp3d2-2] [sp3d2-3] [sp3d2-4] [sp3d2-5] [sp3d2-6] |
备注
当不定义初始轨道时(见 快速入门 2.30节),程序执行随机选择初始投影。